package com.hibase.core.page.entity.listxml;

import java.util.List;

import com.hibase.core.page.entity.window.ParamsXmlVo;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamAsAttribute;

import lombok.Data;

/**
 * 描述:
 *
 * @author li-wei-hua
 * @date 2021-03-23 16:48
 */
@Data
public class ListColumnXmlVO {

    @XStreamAsAttribute
    @XStreamAlias("fileBizType")
    private String fileBizType;


    @XStreamAsAttribute
    @XStreamAlias("title")
    private String title;

    @XStreamAsAttribute
    @XStreamAlias("dataIndex")
    private String dataIndex;

    @XStreamAsAttribute
    @XStreamAlias("enumType")
    private String enumType;

    @XStreamAsAttribute
    @XStreamAlias("hidden")
    private Boolean hidden;

    @XStreamAsAttribute
    @XStreamAlias("sorter")
    private Boolean sorter;

    @XStreamAsAttribute
    @XStreamAlias("width")
    private Integer width;

    @XStreamAsAttribute
    @XStreamAlias("type")
    private String type;

    @XStreamAsAttribute
    @XStreamAlias("pageId")
    private String pageId;
    
    /**
     * 用户自定义查询(包括快速查询)-->通过添加属性 search="true"
     */
    @XStreamAsAttribute
    @XStreamAlias("search")
    private Boolean search;
    
    /**
     * 根据某个状态的值变颜色
     */
    @XStreamAlias("fieldColors")
	private ListFieldColorsXmlVo fieldColor;
    
    private List<ListFieldColorXmlVo> fieldColors;
    
    /**
     * 列表支持参数传递
     */
    @XStreamAsAttribute
	@XStreamAlias("param")
	private String param;
	
	@XStreamAlias("params")
	private ParamsXmlVo params;
	
	/**
	 *  pageIdRule="list.status=='OPEN' ? 'aPage':'bPage'"
	 */
    @XStreamAsAttribute
    @XStreamAlias("pageIdRule")
    private String pageIdRule;
    
    /**
     * 是否冻结 ROWSTART-首部冻结/ROWEND-尾部冻结/NONE-不冻结
     */
    @XStreamAsAttribute
    @XStreamAlias("freezeType")
    private String freezeType;
    
    /**
     * 提示消息
     */
    @XStreamAsAttribute
    @XStreamAlias("message")
    private String message;
    
    /**
     * 默认显示值
     */
    @XStreamAsAttribute
    @XStreamAlias("defaultShowValue")
    private String defaultShowValue;
    
    /**
     * 默认Icon
     */
    @XStreamAsAttribute
    @XStreamAlias("defaultShowIcon")
    private String defaultShowIcon;
    
    
    /**
     * 根据某个状态的值变颜色
     */
    @XStreamAlias("linkButtons")
	private ListFieldLinkButtonsXmlVo linkButton;
    
    private List<ListFieldLinkButtonXmlVo> linkButtons;
	
}